class Solution {
public:
    int maxSubArray(vector<int>& nums) {
        int dmax=-999999,cur=0,dmin=0;
        for(int i=0;i<nums.size();i++)
        {
            cur+=nums[i];
            dmax=max(dmax,cur-dmin);
            dmin=min(dmin,cur);
        }
        return dmax;
    }
};
//不断维护当前前缀和与之前最小的前缀和之间差的最大值
